package snafu.implementation.objects.gold;

import java.awt.Color;

import snafu.framework.objects.WorldObjectItself;
import snafu.framework.states.StateItself;
import snafu.framework.view.Access;
import snafu.implementation.senses.stimuli.light.LightStimulusItself;
import snafu.implementation.states.literals.collect.CollectableLiteralItself;
import snafu.implementation.states.literals.color.ColorLiteralItself;
import snafu.implementation.states.literals.depth.DepthLiteralItself;

public class GoldItself extends WorldObjectItself<GoldView> implements Gold {

	@Override
	public GoldView createView(Access access) {
		return new GoldView(access, this);
	}

	@Override
	public StateItself getInitialState() {
		StateItself state = new StateItself();
		state.addLiteral(new ColorLiteralItself(Color.YELLOW, Access.PUBLIC));
		state.addLiteral(new DepthLiteralItself(2 , Access.PUBLIC));
		state.addLiteral(new CollectableLiteralItself(true, Access.PUBLIC));
		
		state.addStimulus(new LightStimulusItself(0, 100));
		
		return state;
	}

	@Override
	public String output() {
		return "Gold";
	}
}
